/*!
 * \file GapStateUnregistered.h
 * \brief State where connection between MGW and SGW is being established
 */

#ifndef MGW_GAP_STATE_UNREGISTERED_H
#define MGW_GAP_STATE_UNREGISTERED_H

#include "GapStateBase.h"
#include "GapGenerator.h"

namespace tsc
{
namespace mgw
{

/**
 * Initial state of GapGenerator.
 * Media Gateway is not connected with SGW
 */
class GapStateUnregistered : public GapStateBase
{
public:

	static GapStateUnregistered* instance();

protected:

    virtual void
    handleEventGapT711Expired(
        GapGenerator* gapGen,
        GapEventT711Expired* event,
        EventData*& eventData);

	virtual ~GapStateUnregistered();

private:
	GapStateUnregistered();

};

} // namespace mgw
} // namespace tsc

#endif // MGW_GAP_STATE_UNREGISTERED_H
